<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <link rel="stylesheet" href="/layui/css/layui.css" media="all">
    <script src="/layui/layui.js" charset="utf-8"></script>
</head>
<body>

    <div class="layui-container">
        <div class="layui-row">
            <div class="layui-col-lg-offset3" layui-col-lg6>
                <div class="layui-form layuimini-form">
                    <form class="layui-form" action="" lay-filter="studentForm">
                        <div class="layui-form-item">
                            <label class="layui-form-label">支出人</label>
                            <div class="layui-input-block">
                                <input type="text" name="payor" required lay-verify="required" placeholder="请输入支出人姓名"
                                       autocomplete="off" class="layui-input">
                            </div>
                        </div>
                        <input type="hidden" name="id" value="" class="layui-input">
    
                        <div class="layui-form-item">
                            <label class="layui-form-label">联系方式</label>
                            <div class="layui-input-block">
                                <input type="text" name="contactPayor" required lay-verify="required" placeholder="请输入支出人的联系方式"
                                       autocomplete="off" class="layui-input">
                            </div>
    
                        </div>
                        <div class="layui-form-item">
                            <label class="layui-form-label">资金用途</label>
                            <div class="layui-input-block">
                                <input type="text" name="useOfAssets" required lay-verify="required" placeholder="请输入资金用途"
                                       autocomplete="off" class="layui-input">
                            </div>
    
                        </div>
    
                        <div class="layui-form-item layui-form-text">
                            <label class="layui-form-label">日期</label>
                            <div class="layui-input-block">
                                <input type="text" name="disbursementDate" id="date" required lay-verify="date" placeholder="yyyy-MM-dd"
                                       autocomplete="off" class="layui-input">
                            </div>
                        </div>
    
                        <div class="layui-form-item">
                            <label class="layui-form-label">支出金额</label>
                            <div class="layui-input-block">
                                <input type="text" name="expenseAmount" required lay-verify="required" placeholder="请输入支出的金额"
                                       autocomplete="off" class="layui-input">
                            </div>
    
                        </div>
    
                        <div class="layui-form-item">
                            <div class="layui-input-block">
                                <button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button>
                                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
                            </div>
                        </div>
                    </form>
                </div>
    
            </div>
        </div>
    </div>
    

<script>
    //Demo
    layui.use(['form','upload','element'], function () {
        // 表单对象  form
        var form = layui.form
            //jquery 对象 $
            , $ = layui.jquery
            ,element = layui.element
            ,upload = layui.upload
            // 日期组件
            , laydate = layui.laydate;

        //日期   渲染上面 id 为 date 的 标签
        laydate.render({
            elem: '#date'
        });

        // 从 localStorage 把数据取出来   并转成 js 对象
        //  JSON.parse("str")   把字符串转为 js 对象
        var data = JSON.parse(localStorage.getItem("student"));

        //给表单数据赋值
        form.val("studentForm",{
            "id":data.id,
            "payor":data.payor,
            "contactPayor":data.contactPayor,
            "useOfAssets":data.useOfAssets,
            "expenseAmount":data.expenseAmount,
            "disbursementDate":data.disbursementDate,
        });

        // 图片回显
        $("#demo1").attr("src",data.photo);
        $("#photo").val(data.photo);


        //执行实例
        var uploadInst = upload.render({
            elem: '#durl' //绑定元素
            ,field:"file"
            ,url: 'http://localhost:8080/commodity/uploadImage/' //上传接口
            ,before: function(obj){
                //预读本地文件示例，不支持ie8
                obj.preview(function(index, file, result){
                    $('#demo1').attr('src', result); //图片链接（base64）
                });

                element.progress('demo', '0%'); //进度条复位
                layer.msg('上传中', {icon: 16, time: 0});
            }
            ,done: function(res){
                //上传完毕回调
                if(res.code==200){
                    $("#demo1").attr("src",res.data.url);
                    $("#photo").val(res.data.url);  //把图片地址 写到隐藏域 上传的时候 传到后台
                }


                $('#demoText').html(''); //置空上传失败的状态

            }
            ,error: function(){
                //请求异常回调
                //演示失败状态，并实现重传
                var demoText = $('#demoText');
                demoText.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-xs demo-reload">重试</a>');
                demoText.find('.demo-reload').on('click', function(){
                    uploadInst.upload();
                });

            }
            //进度条
            ,progress: function(n, elem, e){
                element.progress('demo', n + '%'); //可配合 layui 进度条元素使用
                if(n == 100){
                    layer.msg('上传完毕', {icon: 1});
                }
            }
        });


        // token 前后端分离再用
        // var token = JSON.parse(localStorage.getItem("token"));


        //监听提交
        form.on('submit(formDemo)', function (data) {
            // layer.msg(JSON.stringify(data.field));
            console.log(JSON.stringify(data.field));
            $.ajax({//TODO
                "url":"http://localhost:8080/assets/updateExpenditure",
                // "headers":{"token":token},
                "data": data.field,
                // result 参数 表式后台响应的数据
                "success":function(result){
                    if(result.code == 200){
                        // 关闭 弹出层
                        var iframeIndex = parent.layer.getFrameIndex(window.name);
                        parent.layer.close(iframeIndex);

                    }else{
                        layer.msg(result.message);
                    }
                },
                "dataType":"json"
            });

            return false;
        });
    });
</script>

</body>
</html>